Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding more SINEX operations #152

Merged
merged 2 commits into from
Aug 9, 2024
Merged

Conversation

adeane-ga
Copy link
Collaborator

@adeane-ga adeane-ga commented Jul 8, 2024

Description

This feature branch contains the addition of more SINEX related functions to the gnss.py module. These are to aid the ability to manipulate SINEX files for general purposes (e.g. coordinate transformations and other operations) by allowing SINEX blocks to be individually worked on and then written out again. There is also the addition of the velocity transformation object in constants.py for ITRF2020/ITRF2014 transformations. The addition to constants.py is thanks to work form Carl Wang. There is also a minor fix to the DMS object in angles.py relating to the case where the seconds column in a SINEX is not double digits and so an empty space was returned instead of the seconds variable.

This work is associated to another pull request in another repository: GeoscienceAustralia/gda2020#1.

Functions Added

  • read_sinex_custom()
  • sinex2dataframe_solution_estimate()
  • sinex2dataframe_solution_matrix_estimate()
  • dataframe2sinex_solution_estimate()
  • dataframe2sinex_solution_matrix_estimate()
  • dataframe2matrix_solution_matrix_estimate()
  • matrix2dataframe_solution_matrix_estimate()
  • writeSINEX()

Comments

  • Due to the large amount of functions in the gnss.py module, a list of all the functions has also been added to the top of the file. This might not be necessary or the correct practice.

Future Work

Here is some suggestions for either a future work package, or additional work before merging.

  • Some of these functions have names that look like they have the same application as existing functions even though they have different applications. Some work could be done to clarify the names and also docstrings so that it is more clear.
  • Investigate the performance of these functions. Pandas Dataframes have been used for convenience, there might be other formats that are more efficient. This will be important for large SINEX files. Some investigations and benchmarking could be done.
  • None of these functions have associated unit tests with them. These should be scoped and added.
  • The existing read_sinex_matrix() function works when the SINEX VCV is upper triangle. If the SINEX is lower triangle, the covar_xy variable output is actually the var_y output.

@adeane-ga adeane-ga requested a review from harry093 July 8, 2024 02:34
Copy link
Collaborator

@harry093 harry093 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Al, some very useful functions in there!

@harry093 harry093 merged commit 026735e into master Aug 9, 2024
2 checks passed
@adeane-ga adeane-ga deleted the AD/add_more_sinex_functions branch August 27, 2024 23:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants